/* 
 * File:   cCalibrate.h
 * Author: caio
 *
 * Created on September 1, 2010, 2:57 AM
 */

#ifndef _CCALIBRATE_H_
#define	_CCALIBRATE_H_

#include <wx/string.h>
#include <wx/bitmap.h>
#include <wx/image.h>
#include <wx/icon.h>
#include <wx/menu.h>
#include <wx/gdicmn.h>
#include <wx/font.h>
#include <wx/colour.h>
#include <wx/settings.h>
#include <wx/panel.h>
#include <wx/button.h>
#include <wx/stattext.h>
#include <wx/filepicker.h>
#include <wx/textctrl.h>
#include <wx/statline.h>
#include <wx/checkbox.h>
#include <wx/radiobox.h>
#include <wx/sizer.h>
#include <wx/statusbr.h>
#include <wx/frame.h>

///////////////////////////////////////////////////////////////////////////

#define wxID_CMENUBAR 1000
#define wxID_IMGPANEL 1001
#define wxID_CONFIGPANEL 1002
#define wxID_CALIBDIRPICKER 1003
#define wxID_HORIZONTALTEXTCTRL 1004
#define wxID_VERTICALTEXTCTRL 1005
#define wxID_SHOWIMGSCHECKBOX 1006
#define wxID_METHODRADIOBOX 1007

///////////////////////////////////////////////////////////////////////////////
/// Class cCalibrate
///////////////////////////////////////////////////////////////////////////////
class cCalibrate : public wxFrame 
{
	private:
	
	protected:
		wxMenuBar* menuBar;
		wxMenu* fileMenu;
		wxPanel* imgPanel;
		wxPanel* configPanel;
		wxButton* calibrateButton;
		wxStaticText* m_staticText37;
		wxDirPickerCtrl* calibDirPicker;
		wxStaticText* m_staticText3;
		wxTextCtrl* horizontalTextCtrl;
		wxStaticText* m_staticText1;
		wxTextCtrl* verticalTextCtrl;
		wxStaticText* m_staticText2;
		wxStaticLine* m_staticline2;
		wxStaticLine* m_staticline3;
		wxStaticText* m_staticText6;
		
		wxTextCtrl* extrinTextCtrl;
		wxStaticText* m_staticText5;
		wxTextCtrl* intrinTextCtrl;
		wxStaticText* m_staticText4;
		wxStaticLine* m_staticline4;
		wxStaticLine* m_staticline5;
		wxCheckBox* showImgsCheckBox;
		wxRadioBox* methodRadioBox;
		wxStatusBar* calibrateStatusBar;
		
		// Virtual event handlers, overide them in your derived class
		virtual void onExit( wxCommandEvent& event ) { event.Skip(); }
		virtual void onCalibrate( wxCommandEvent& event ) { event.Skip(); }
		
	
	public:
		
		cCalibrate( wxWindow* parent, wxWindowID id = wxID_ANY, const wxString& title = wxEmptyString, const wxPoint& pos = wxDefaultPosition, const wxSize& size = wxSize( -1,-1 ), long style = wxDEFAULT_FRAME_STYLE|wxTAB_TRAVERSAL );
		~cCalibrate();
	
};

#endif	/* CCALIBRATE_H */

